<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <title>Layui</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <!-- 注意：如果你直接复制所有代码到本地，下面js,css路径需要改成你本地的 -->
    <link rel="stylesheet" th:href="@{/layui/css/layui.css}"media="all">
    <script th:src="@{/layui/layui.js}" charset="utf-8"></script>
</head>
<body>
<br><br>
<!--添加 搜索的form  begin-->
<form class="layui-form" action="" id="searchForm">
    <div class="layui-form-item">
        <div class="layui-inline">
            <label class="layui-form-label">WeChat号</label>
            <div class="layui-input-inline">
                <input type="text" name="wechat_no" id="wechat_no" autocomplete="off" class="layui-input">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">WeChat备注</label>
            <div class="layui-input-inline">
                <input type="text" name="wechat_mark" id="wechat_mark" autocomplete="off" class="layui-input">
            </div>
        </div>
        <div class="layui-inline">
            <label class="layui-form-label">QQ</label>
            <div class="layui-input-inline">
                <input type="text" name="qq_no"  id="qq_no" autocomplete="off" class="layui-input">
            </div>
        </div>

        <div class="layui-inline">
            <button type="button" onclick="doSearch();" class="layui-btn layui-btn-sm">搜索</button>
            <button type="reset" class="layui-btn layui-btn-sm">重置</button>
        </div>
    </div>
</form>
<!--添加 搜索的form end-->
<table class="layui-hide" id="test" lay-filter="test"></table>

<script type="text/html" id="toolbarDemo">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
        <button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
        <button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
        <button class="layui-btn layui-btn-sm" lay-event="isAdd">添加课程</button>
    </div>
</script>
<script type="text/html" id="barDemo">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>

<script>
    var $,table;
    layui.use('table', function(){
        table = layui.table;
        $ = layui.jquery;
        //温馨提示：默认由前端自动合计当前行数据。从 layui 2.5.6 开始： 若接口直接返回了合计行数据，则优先读取接口合计行数据。
        //详见：https://www.layui.com/doc/modules/table.html#totalRow
        table.render({
            elem: '#test'
            //,url:'/test/table/demo1.json'
            ,url:'/courseOrder/listJson'
            ,toolbar: '#toolbarDemo'
            ,title: '用户数据表'
            ,totalRow: true
            ,cols: [
                [
                {type: 'checkbox', fixed: 'left'}
                ,{field:'name', title:'名字', width:120}
                ,{field:'wechat_mark', title:'微信备注', width:120}
                ,{field:'wechat_no', title:'微信ID', width:120}
                ,{field:'qq_no', title:'QQ号', width:120}
                ,{field:'course_name', title:'购买课程', width:120}
                ,{field:'course_price', title:'价格', width:120}
                ,{field:'order_date', title:'订单日期', width:120}
                ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
              ]
            ]
            ,page: true//默认的是显示 [10,20,30,40,50,60,70,80,90]
            //设置默认的值，即默认的每页显示几条数据
            ,limit:8
            //下面就是自己自定义的每页显示的条数
            ,limits:[7,8,9,10,15,20,25]
            ,id:'orderTable'
        });

        //工具栏事件
        table.on('toolbar(test)', function(obj){
            var checkStatus = table.checkStatus(obj.config.id);
            switch(obj.event){
                case 'getCheckData':
                    var data = checkStatus.data;
                    layer.alert(JSON.stringify(data));
                    break;
                case 'getCheckLength':
                    var data = checkStatus.data;
                    layer.msg('选中了：'+ data.length + ' 个');
                    break;
                case 'isAll':
                    layer.msg(checkStatus.isAll ? '全选': '未全选')
                    break;
                //下面就是给添加按钮绑定一个监听事件
                case 'isAdd':
                    //layer.msg("弹出添加页面");
                    parent.layer.open({
                        type:2,//2 跳转到页面  1表示的是显示 content中的内容
                        offset: 'auto',
                        title:'添加课程订单',
                        content:'/courseOrder/add',//设置跳转的URL
                        area: ['1000px', '600px'],//设置弹出的窗口的大小
                        btn:'关闭全部',
                        btnAlign:'c',
                        yes:function () {
                            parent.layer.closeAll();
                        }
                    });
                    break;
            };
        });

        //监听行双击事件
        table.on('rowDouble(test)', function(obj){
            //obj 同上
            //console.log(obj);
            //取出 order_id
            var orderId = obj.data.order_id
            //alert(orderId);
            parent.layer.open({
                type:2,//2 跳转到页面
                offset: 'auto',
                title:'课程订单详情',
                content:'/courseOrder/detail?order_id='+orderId,
                area: ['1000px', '600px'],
                btn:'关闭全部',
                btnAlign:'c',
                yes:function () {
                    parent.layer.closeAll();
                }
            });
        });

        //监听行工具事件
        //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
        table.on('tool(test)', function(obj){
            var orderId = obj.data.order_id; //获得 order_id
            var layEvent = obj.event;//获得 lay-event 对应的值

            if(layEvent === 'edit'){
                parent.layer.open({
                    type:2,//2 跳转到页面
                    offset: 'auto',
                    title:'编辑课程订单',
                    content:'/courseOrder/edit?order_id='+orderId,//设置跳转的URL
                    area: ['1000px', '600px'],//设置弹出的窗口的大小
                    btn:'关闭全部',
                    btnAlign:'c',
                    yes:function () {
                        parent.layer.closeAll();
                    }
                });
            }else if(layEvent == 'del'){
                layer.confirm("确定删除该行？",function (index) {
                    //obj.del(); //删除对应行（tr）的 DOM 结构
                    layer.close(index);
                    //向服务端发送删除指令
                    //doDelete(obj);
                    $.get("/courseOrder/delete",{order_id:orderId},function (respData) {
                        console.log(respData);
                        if(respData.success == 1){
                            layer.msg("删除成功");
                        }else{
                            layer.msg("删除失败" + resp.message);
                        }
                    });
                });
            }
        });
        /*function doDelete(obj) {
           var oId = obj.data.order_id;
           $.get('/courseorder/delete',{order_id:oId},function (resp) { //console.log(resp);
               if(resp.success == 1){
                   layer.msg("删除成功");
               }else{
                   layer.msg("删除失败" + resp.message);
               }

           });
       }*/
    });
    function doSearch() {
        //通过jquery获取参数
        var wechat_no = $("#wechat_no").val();
        var wechat_mark = $("#wechat_mark").val();
        var qq_no = $("#qq_no").val();
        //table.reaload方法,附加上搜索条件
        table.reload('orderTable',{
            where:{ //附加额外的参数
                wechat_no:wechat_no,
                wechat_mark:wechat_mark,
                qq_no:qq_no
            },page:{
                curr: 1 //搜索之后，重新从第 1页开始，显示
            }
        });
    }
</script>

</body>
</html>